// 更新任务号脚本
const db = require('./src/config/database');

// 更新所有指令的任务号为递增的纯数字格式（从200开始）
function updateTaskIds() {
    console.log('开始更新任务号...');
    
    // 获取所有指令，按ID排序
    db.all("SELECT id FROM instructions ORDER BY id", (err, rows) => {
        if (err) {
            console.error('查询指令数据失败:', err.message);
            return;
        }
        
        console.log(`找到 ${rows.length} 条指令数据`);
        
        // 更新每条指令的任务号
        rows.forEach((row, index) => {
            // 生成从200开始的递增数字任务号
            const newTaskId = (200 + index + 1).toString();
            
            db.run("UPDATE instructions SET task_id = ? WHERE id = ?", [newTaskId, row.id], (err) => {
                if (err) {
                    console.error(`更新指令ID ${row.id} 的任务号失败:`, err.message);
                } else {
                    console.log(`已更新指令ID ${row.id} 的任务号: ${newTaskId}`);
                }
                
                // 如果是最后一条记录，关闭数据库连接
                if (index === rows.length - 1) {
                    console.log('任务号更新完成');
                    db.close((err) => {
                        if (err) {
                            console.error('关闭数据库连接失败:', err.message);
                        } else {
                            console.log('数据库连接已关闭');
                        }
                    });
                }
            });
        });
    });
}

// 执行更新
updateTaskIds();